تیک زدن چک باکس در اکسل بر مبنای مقادیر یک سلول
چک باکس ها در اکسل یکی از اجزایی هستند که در بسیاری از موارد می توانند کارهای جالبی را برای ما انجام دهند .
اما کاربرد یک چک باکس چیست ؟
چه کارهایی می توانیم با استفاده از چک باکس ها انجام دهیم ؟
فلسفه یک check box به این صورت است که :
ما یک لیست شامل یک سری از انتخاب ها را در اختیار کاربر قرار می دهیم .
حالا دو مسیر برای کاربر تعیین می کنیم .
اگر بخواهیم کاری کنیم که کاربر قادر به انتخاب چند مورد از آیتم هایی باشد که در اختیارش می گذاریم می توانیم به سراغ Ceck Box ها برویم .
اما اگر بخواهیم که کاربر فقط قادر به انتخاب یک گزینه از بین گزینه هایی که اختیار دارد باشد .در اینصورت می توانیم از قابلیت Option Button استفاده کنیم .
در خصوص ماهیت خود چک باکس ها و اینکه چگونه می توانیم آنها را به محیط اکسل خود اضافه نماییم در مطلب جداگانه ای توضیح دادیم .
برای دسترسی به این مطلب می توانید از لینک زیر بهره ببرید .
از چک باکس ها در جاهای مختلفی می شود استفاده کرد .
می توان یک یا چند چک باکس را بطور مستقیم در صفحه کاری اکسل خود قرار داده و از آنها استفاده مناسب کرد .
یا در حالتی دیگر می شود یک یا چند چک باکس را در داخل یک فرم قرار داد و از انها استفاده کرد .
البته در حالت دوم شاید نیاز به کمی کد نویسی و برنامه نویسی وی بی اداشته باشید .
اما امروز می خواهیم به بررسی مطلبی بپردازیم که بطور مستقیم به قابلیت چک باکس ها می پردازد .
هدف ما این است که با طی کردن مراحل مختلف کاری کنیم که چک باکس ها ی موجود در اکسل با توجه به مقادیر موجود در سلول های مرتبط به آنها بطور خودکار یک خورده و یا اینکه بطور خود کار تیک آنها برداشته شود .
بنابراین ما را تا انتها همراهی کنید تا با این ترفند جالب آشنا شویم .
آماده سازی محیط اکسل
در قدم اول لازم است که محیط کار خود در اکسل و هرآنچه که به آن نیاز داریم را آماده کنیم .
برای این کار مراحل زیر را دنبال نمایید .
ابتدا از سربرگ Developer و از زیرمجموعه Insert چند تکس باکس را به محیط اکسل خود اضافه نمایید .
سپس بر روی یکی از تکس باکس ها کلیک راست نموده و از منوی باز شده گزینه Format Control را انتخاب نمایید .
با انتخاب این گزینه اکسل شما را به پنجره زیر هدایت می کند .
ما در این پنجره می خواهیم تکس باکس مورد نظر خود را به یک سلول لینک دهیم .
بعنوان مثال من تکس باکس موجود در سلول B2 را به سلول C2 لینک می دهم
برای این کار کافی است که از سربرگ controls در کادر مربوط به Cell link آدرس سلول مورد نظر خود را وارد نمایم. همین کار را برای سایر تکس باکس ها نیز تکرار نموده و سلول مورد نظر خود را در ستون C به آنها لینک می دهیم
بعد از انجام این کار به سراغ اصل موضوع خود می رویم .
روش اول در تیک زدن چک باکس در اکسل بطور خودکار
هدف اصلی ما این است که اگر نمره درج شده برای دانش آموز در سلول A2 مساوی و یا بیشتر از ۱۰ بود چک باکس موجود در ستون مربوط به وضعیت قبولی بطور خودکار تیک دار شود که نمایانگر قبول شدن دانش آموز مربوطه است .
اما اگر نمره درج شده در این ستون کمتر از ۱۰ بود تیک چک باکس مربوطه برداشته شود که نمایانگر مردود بودن فرد خواهد بود .
روش اول : استفاده از فرمول در محیط اکسل
ما در این روش به راحتی می توانیم با استفاده از یک تابع شرطی در اکسل کاری کنیم که چک باکس های موجود در صفحه کاری ما بطور خودکار تیک زده شوند .
برای این کار در سلول c2 که با اولین چک باکس ما لینک برقرار کرده است تابع زیر را وارد می کنیم .
(IF(A2>=10;TRUE;FALSE=
برای اینکه این فرمول برای تمامی تکس باکس های ما اعمال گردد فقط کافی است آن را به سایر سلول ها تعمیم دهیم .
تصویر زیر مراحل انجام این کارها و نتیجه نهایی را به نمایش می گذارد .
بعد از تکمیل مراحل فوق و همانگونه که در تصویر نیز مشاهده می کنید تکس باکس های موجود در صفحه کاری با توجه به نمرات هر سطر بطور خود کار تیک دار می شوند.
این روشی بود که با استفاده از یک تابع ساده به راحتی می توانیم کاری کنیم که چک باکس ما بطور خودکار تیک زده شود .
این روش برای افراد مبتدی و تا حدی متوسط در کار با نرم افزار اکسل روش مناسب و کارآمدی است.
در اینجا کار برای این افراد تمام شده است .
اما می خواهیم کمی کار را حرفه ای تر بکنیم .
برای کسانی که کار حرفه ای را دوست دارند پیشنهاد می کنم که ادامه این مطلب را دنبال کنند .
روش دوم در تیک زدن چک باکس در اکسل بطور خودکار
ما در روش دوم به سراغ استفاده از کدهای VBA می رویم .
در واقع با استفاده از این کدها همان قابلیتی را که در روش قبلی ایجاد کردیم را برای چک باکس های خود اعمال می کنیم .
برای این کار با زدن دکمه های ALt +F11 وارد محیط کد نویسی خود می شویم .
در این محیط در رویداد مربوط به Worksheet_Change کدهای زیر را وارد می کنیم .
If Range("A2").Value >= 10 Then ActiveSheet.CheckBoxes("chk-1").Value = xlOn Else ActiveSheet.CheckBoxes("chk-1").Value = xlOff End If
در کد بالا نکات زیر را باید مد نظر قرار دهید :
اول اینکه کد بالا فقط بر روی یکی از چک باکس ها ی موجود در صفحه کاری ما اعمال می گردد .
دوم اینکه برای چک باکس های خود نام مناسبی را در نظر بگیرید .
بعنوان مثال در کد بالا من نام chk-1 را برای چک باکس خود در نظر گرفته ام .
این کد تنها به عنوان نمونه در خصوص نحوه چگونگی انجام این کار در اینجا ذکر شده است .
این مطلب مثالی بود در خصوص نحوه استفاده از چک باکس ها در اکسل .
من قبلا در سایت مطالب مختلفی منتشر کرده ام در آنها از قابلیت چک باکس ها استفاده کرده ام .
مثلا یک سری به مطلب زیر بزنید .
در اینجا خیلی خوب از قابلیت چک باکس ها استفاده کرده و یک چک لیست خیلی با حال و کاربردی را برای خودمان ایجاد کرده ام.
اگر به تصویر زیر نگاه کنید متوجه منظور من می شوید .
اگر می خواهید چنین قابلیتی را برای خود ایجاد کند من توضیح کاملش را در لینک بالا گذاشته ام .
در مطالب آینده بازهم مثال های کاربردی تر در خصوص کار با تکس باکس ها در اکسل خواهیم داشت .
دیدگاهتان را بنویسید